Ancillary identification codes are often added to broadcast radio and television programs for the purpose of enabling audience measurement. The ancillary identification codes, which are added at the time of program broadcast or creation, are subsequently accessed at a signal reception site to identify a program being viewed or heard at the signal reception site and for identifying the time at which the program is being viewed/heard. Systems for encoding video signals with ancillary identification codes have been in widespread use for decades. For examples of such systems refer to U.S. Pat. No. 5,425,100 to Thomas et al., incorporated herein by reference. Many of the video encoding systems are designed to take advantage of the rigid, periodic timing that is characteristic of video signals by adding the ancillary code at periodic intervals in one of the lines of the vertical blanking interval of a television signal. In contrast, audio encoding systems have become feasible more recently because of the greater difficulty in hiding a code in an audio signal that lacks the rigid, periodic timing of a video signal. Specifically, coding cannot be masked during periods of program silence such that the code cannot be inserted at regular intervals when one or more of the intervals coincide with periods of silence. As a result, audio encoding systems typically do not add identification codes to a program at strictly periodic intervals.
To enable audience measurement, conventional broadcast identification codes begin with a synchronization or start-of-message field which allows a decoder to detect and lock onto the code, followed by a source identification (SID) field that identifies the source of the broadcast program. A time code field containing a characteristic time, such as a time of initial dissemination of the broadcast from a network feed site to affiliated local stations, follows the SID field. Other fields may contain additional data.
A household site selected for audience measurement may decode a broadcast program signal to obtain the time codes and SIDs embedded therein. The time codes and SIDs are stored at the household site and subsequently transmitted to a central facility for reconciliation with an activity log that identifies the broadcast activity of a set of identified sources relative to a set of time codes. Thus, the time codes and SIDs received from a household site are compared to the activity log to identify the programs that have been viewed/heard at the household site.
However, the time codes extracted from the time code fields may be insufficient to enable identification of the time at which a program was viewed. Specifically, a delay may occur between a time that a program is encoded and a time when the same program is aired. Specifically, a network may encode a program with an SID unique to the network and with a time code equal to a standard clock time at which the program is initially distributed to affiliated local broadcasters by a satellite distribution system. The local broadcasters may either transmit the program immediately or store the program for hours or even days before airing the program. As a result, the time code embedded into the broadcast signal may have no relation to the actual local time at which the program is broadcast to viewers/listeners. Similarly, VCR technology permits viewers to record broadcast programs for later viewing of the recorded program off-air thereby also causing a shift between the time code embedded in the signal and the actual local clock time at which the program is viewed.
To compensate for the potential time delay that may occur between program encoding and program broadcast, the household site is additionally configured to record a set of read times that represent the actual, local times at which a broadcast program is being decoded for viewing/listening. More specifically, a read time is obtained from a local clock for each instance that a time code is detected/decoded in the programming signal being viewed/heard.
Unfortunately though, the data collection performed by an audience measurement system such as the household site described above is not error free. Specifically, decoder error may occasionally cause one or more of the extracted identification code bits to be erroneously decoded. Generally, the probability that a time code bit will be incorrectly decoded increases monotonically with the temporal spacing of the code bit from the synchronization field. As a result, an accurately decoded SID does not guarantee that the associated time code bits have been decoded error free. In addition to decoder errors, the audience measurement system may encounter time intervals during which no code can be read—either because none was added to the signal initially or because of signal transmission and distribution artifacts that degrade or accidentally erase the code. Poor signal reception may further exacerbate data collection errors.
In addition to the decoder errors discussed above, audience measurement systems designed to collect time codes from audio signals are also prone to data collection errors associated with using a microphone to receive the signal to be decoded. Specifically, despite dramatic advancements in the art that have enabled the inaudible burying of a time code within an audio signal and that have further enabled the retrieval of the same code at a reception site, a time code cannot be reliably extracted from an inevitably degraded signal picked up with a microphone.
Unfortunately, prior art systems designed to overcome such data collection errors are often computationally expensive and require complex processing equipment that can be costly and difficult to maintain and repair. For example, U.S. Pat. No. 5,481,294 to Thomas et al. discloses a measurement system that uses a computationally expensive feature recognition system to back-up a code reading system.
As a result, there is a need in the art for an audience measurement system that overcomes one or more of the foregoing data collection errors.